package com.hzncc.flowable_diboot.excel.model;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.HeadStyle;
import com.alibaba.excel.enums.poi.FillPatternTypeEnum;
import com.diboot.file.excel.BaseExcelModel;
import jakarta.validation.constraints.NotNull;
import lombok.Getter;
import lombok.Setter;
import org.hibernate.validator.constraints.Length;

import java.math.BigDecimal;


/**
* 合同产品物料技术清单 导入model定义
*
* @author MyName
* @version 1.0
* @date 2024-08-05
 * Copyright © MyCorp
*/
@Getter
@Setter
@ExcelIgnoreUnannotated
public class ContractProductMaterialExportModel extends BaseExcelModel {

    /**
    * 行号
    */
    @ExcelProperty(value = "序号")
    private String rowNum;

    /**
    * 物料编码
    */
    @ExcelProperty(value = "物料编码")
    private String materialCode;
    /**
    * 物料功能描述
    */
    @Length(max=100, message="物料功能描述长度应小于100")
    @ExcelProperty(value = "功能")
    private String materialDesc;
    /**
    * 物料单价
    */
    @NotNull(message = "物料单价不能为空")
    @HeadStyle(fillPatternType = FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor = 13)
    @ExcelProperty(value = "单价")
    private BigDecimal materialPrice;
    /**
    * 物料数量
    */
    @NotNull(message = "物料数量不能为空")
    @HeadStyle(fillPatternType = FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor = 13)
    @ExcelProperty(value = "数量")
    private Long materialCount;
    /**
    * 物料折扣
    */
//    @NotNull(message = "物料折扣不能为空")
//    @HeadStyle(fillPatternType = FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor = 13)
//    @ExcelProperty(value = "折扣")
//    private BigDecimal materialDiscount;
    /**
    * 物料总价格
    */
//    @NotNull(message = "物料总价格不能为空")
//    @HeadStyle(fillPatternType = FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor = 13)
//    @ExcelProperty(value = "金额")
//    private BigDecimal materialTotalPrice;
    /**
    * 备注
    */
    @Length(max=100, message="备注长度应小于100")
    @ExcelProperty(value = "备注")
    private String remark;

}